package com.ganzi.ganziserver.dao;

import com.ganzi.ganziserver.core.FanInformation;
import com.ganzi.ganziserver.core.FanState;
import com.ganzi.ganziserver.core.SendInformation;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.math.BigInteger;
import java.util.List;

@Repository
public interface FanInfromationDao {

    public FanInformation findFanInformationById(long id)throws Exception;
    public SendInformation findFanInformationByIdForSend(long id)throws Exception;
    public List<FanInformation> findAllFanInformation()throws Exception;
    public List<FanInformation> findFanInformationBySchoolAndFloor(@Param("schoolId")long schoolId, @Param("floor")int floor)throws Exception;
    public List<FanInformation> findFanInformationBySchool(long schoolId)throws Exception;
    public List<FanInformation> findFanInformationBySchoolAndCollect(@Param("schoolId")long schoolId,@Param("collectId")long collectId)throws Exception;
    public Long findFanInformationBySchoolAndCollectAndNumber(@Param("schoolId")long schoolId,@Param("collectId")long collectId,@Param("number")int number)throws Exception;
    public void insertFanInformation(FanInformation fanInformation)throws Exception;
    public void updateFanInformation(FanInformation fanInformation)throws Exception;
}
